Modern computer systems make extensive use of network computing and network data storage systems. Such use has proliferated in recent years, particularly in distributed or virtualized computer systems where multiple computer systems may share resources when performing operations and tasks associated with the computer systems. Such computer systems frequently utilize distributed data storage in multiple locations and of multiple data storage classes to store shared data items so that such data items may be made available to a plurality of consumers. The resources for network computing and network data storage are often provided by computing resource service providers who leverage large-scale networks of computers, servers, and storage drives to enable customers to store data for a variety of applications and services. The usage of such network computing and network data storage allows customers to efficiently and adaptively satisfy their varying computing needs, whereby the computing and data storage resources that may be required by the customers are added or removed from a large pool provided by a computing resource provider as needed.
The proliferation of network computing and network data storage of different data storage classes, as well as the attendant increase in the number of entities dependent on network computing and network data storage, have increased the amount and type of data to be stored. Because consumers have a variety of usages for stored data, different data objects are stored for varying amounts of time and in different data storage classes. Determining the current (or most recent) version of the data objects and the provenance of the data objects can be challenging and resource intensive.